package smallfrench.moteur.biblio.igu;

import javax.swing.text.JTextComponent;

import smallfrench.moteur.biblio.AClasse;
import smallfrench.moteur.biblio.AnnotationMembre;
import smallfrench.moteur.biblio.RBooleen;
import smallfrench.moteur.biblio.RChaine;

public class ComposantTexte extends Composant {


	public static final AClasse CLASSE = AClasse.creer(ComposantTexte.class);

	private JTextComponent text;

	@AnnotationMembre
	public ComposantTexte() {
	}

	public void setJTextComponent(JTextComponent t) {
		text = t;
		super.setComponent(text);
	}

	public JTextComponent getJTextComponent() {
		return text;
	}

	@AnnotationMembre
	public void modifierTexte(RChaine t) {
		text.setText(t.valeur);
	}

	@AnnotationMembre
	public RChaine obtenirTexte() {
		return new RChaine(text.getText());
	}

	@AnnotationMembre
	public void toutSelectionner() {
		text.selectAll();
	}

	@AnnotationMembre
	public void modifierModifiable(RBooleen b) {
		text.setEditable(b.valeur);
	}

	@AnnotationMembre
	public RBooleen obtenirModifiable() {
		return RBooleen.nouveau(text.isEditable());
	}

	@Override
	@AnnotationMembre
	public RChaine enChaine() {
		return new RChaine("ComposantTexte");
	}

}
